Skip to content

Add show-list-prefer-prerendered pattern (CS-12147)#97

Merged
habdelra merged 4 commits into
mainfrom
claude/cs-12147-safeguards-ciw4i0
Jul 16, 2026
Merged

Add show-list-prefer-prerendered pattern (CS-12147)#97
habdelra merged 4 commits into
mainfrom
claude/cs-12147-safeguards-ciw4i0

Conversation

@habdelra

Copy link
Copy Markdown
Contributor

Why

The card-facing search APIs split by cost, and the ergonomic-sounding ones hydrate:

  • @context.searchResultsComponent — renders the prerendered entry stream (HTML, lazily hydrated per row). Cheap.
  • getCards / getCardCollection / store.search — return live CardDef instances → server loadLinks + serialization + Store hydration for every matching row. Expensive.

Nothing in the skill tree steered authors (or AI) toward the cheap path — a display list could silently become an N-round-trip hydration, which is the class of userland code that could push the server into overload. This is the defense-in-depth companion to the platform-side bounds: a nudge, not enforcement.

What changed

  • New pattern boxel-patterns/patterns/show-list-prefer-prerendered/ (README + example.gts), a sibling to show-card-list-with-views / show-table-from-query:
    • A cost table contrasting the prerendered display surface with the instance-hydrating getters.
    • The "when a data-getter is genuinely needed, scope it to the current realm" guidance (via the realmURL Symbol), so a hydrating query stays bounded to one realm rather than the whole federation.
    • A side-by-side example.gts: the cheap @context.searchResultsComponent default, plus a commented getCards/store.search path marked "only when you read/mutate the instances," scoped to the current realm.
  • Registered in boxel-patterns/SKILL.md (Show) and skills/glossary.md.
  • Cross-linked from the two sibling patterns' See also sections.
  • Framed the query-systems.md "when to use what to query cards" decision as a cost decision and pointed it at the new pattern.

Notes

  • Written in evergreen style — the guidance is stated as a durable cost principle, with no dated incident references.
  • validated: source-proven — every mechanic in the example (searchResultsComponent, getCards, realmURL scoping) is already proven in live realms and documented in query-systems.md; the pattern distills the decision.

🤖 Generated with Claude Code

https://claude.ai/code/session_01QboXNnsmCeFyQ76oNwVMXM


Generated by Claude Code

Steers card authors (and AI) toward the cheap prerendered
@context.searchResultsComponent stream for display lists, and away from
the instance-hydrating getters (getCards / getCardCollection /
store.search) that trigger a server loadLinks + serialization + Store
hydration per row.

- New boxel-patterns pattern `show-list-prefer-prerendered` (README +
  example.gts) with a cost table, the "when a data-getter is genuinely
  needed, scope to the current realm" guidance, and a side-by-side
  cheap-vs-hydrated example.
- Register it in boxel-patterns/SKILL.md (Show) and glossary.md.
- Cross-link from the sibling patterns show-card-list-with-views and
  show-table-from-query.
- Frame the query-systems.md "when to use what to query cards" decision
  as a cost decision and point to the pattern.

Defense-in-depth — a nudge toward the cheap path, not enforcement.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QboXNnsmCeFyQ76oNwVMXM
@github-actions

github-actions Bot commented Jul 16, 2026

Copy link
Copy Markdown

Staging Workspace Sync Successful

Successfully synced changes to staging workspace
Workspace: https://realms-staging.stack.cards/skills/
Commit: c5ac19a
Synced at: 2026-07-16 20:18:16 UTC

Sync Details

Starting push from . to https://realms-staging.stack.cards/skills/
Testing realm access...
Realm access verified
Found 320 files in local directory
No sync manifest found, will upload all files
Uploading 320 file(s) via /_atomic...
  Uploaded: Skill/boxel-design.json
  Uploaded: Skill/boxel-design.md
  Uploaded: Skill/boxel-development.json
  Uploaded: Skill/boxel-environment.json
  Uploaded: Skill/boxel-ui-guidelines.json
  Uploaded: Skill/boxel-ui-guidelines.md
  Uploaded: Skill/catalog-listing.json
  Uploaded: Skill/catalog-listing.md
  Uploaded: Skill/dev-bfm-syntax.json
  Uploaded: Skill/dev-bfm-syntax.md
  Uploaded: Skill/dev-command-development.json
  Uploaded: Skill/dev-command-development.md
  Uploaded: Skill/dev-core-concept.json
  Uploaded: Skill/dev-core-concept.md
  Uploaded: Skill/dev-core-patterns.json
  Uploaded: Skill/dev-core-patterns.md
  Uploaded: Skill/dev-data-management.json
  Uploaded: Skill/dev-data-management.md
  Uploaded: Skill/dev-defensive-link-traversal.json
  Uploaded: Skill/dev-defensive-link-traversal.md
  Uploaded: Skill/dev-defensive-programming.json
  Uploaded: Skill/dev-defensive-programming.md
  Uploaded: Skill/dev-delegated-rendering.json
  Uploaded: Skill/dev-delegated-rendering.md
  Uploaded: Skill/dev-enumerations.json
  Uploaded: Skill/dev-enumerations.md
  Uploaded: Skill/dev-external-libraries.json
  Uploaded: Skill/dev-external-libraries.md
  Uploaded: Skill/dev-file-def.json
  Uploaded: Skill/dev-file-def.md
  Uploaded: Skill/dev-file-editing.json
  Uploaded: Skill/dev-file-editing.md
  Uploaded: Skill/dev-fitted-formats.json
  Uploaded: Skill/dev-fitted-formats.md
  Uploaded: Skill/dev-markdown-format.json
  Uploaded: Skill/dev-markdown-format.md
  Uploaded: Skill/dev-query-systems.json
  Uploaded: Skill/dev-query-systems.md
  Uploaded: Skill/dev-quick-reference.json
  Uploaded: Skill/dev-quick-reference.md
  Uploaded: Skill/dev-relationship-loading-state.json
  Uploaded: Skill/dev-relationship-loading-state.md
  Uploaded: Skill/dev-replicate-ai.json
  Uploaded: Skill/dev-replicate-ai.md
  Uploaded: Skill/dev-searchable-fields.json
  Uploaded: Skill/dev-searchable-fields.md
  Uploaded: Skill/dev-spec-usage.json
  Uploaded: Skill/dev-spec-usage.md
  Uploaded: Skill/dev-styling-design.json
  Uploaded: Skill/dev-styling-design.md
  Uploaded: Skill/dev-technical-rules.json
  Uploaded: Skill/dev-technical-rules.md
  Uploaded: Skill/dev-template-patterns.json
  Uploaded: Skill/dev-template-patterns.md
  Uploaded: Skill/dev-theme-design-system.json
  Uploaded: Skill/dev-theme-design-system.md
  Uploaded: Skill/env-assistant-persona.json
  Uploaded: Skill/env-assistant-persona.md
  Uploaded: Skill/env-calling-commands.json
  Uploaded: Skill/env-calling-commands.md
  Uploaded: Skill/env-choosing-llm-models.json
  Uploaded: Skill/env-choosing-llm-models.md
  Uploaded: Skill/env-creating-and-editing-cards.json
  Uploaded: Skill/env-creating-and-editing-cards.md
  Uploaded: Skill/env-diagnosing-broken-links.json
  Uploaded: Skill/env-diagnosing-broken-links.md
  Uploaded: Skill/env-indexing-operations.json
  Uploaded: Skill/env-indexing-operations.md
  Uploaded: Skill/env-markdown-edit.json
  Uploaded: Skill/env-markdown-edit.md
  Uploaded: Skill/env-searching-and-querying.json
  Uploaded: Skill/env-searching-and-querying.md
  Uploaded: Skill/env-sim-boxel-environment-guide.json
  Uploaded: Skill/env-sim-boxel-environment-guide.md
  Uploaded: Skill/env-user-environment-awareness.json
  Uploaded: Skill/env-user-environment-awareness.md
  Uploaded: Skill/env-workflows-and-orchestration-patterns.json
  Uploaded: Skill/env-workflows-and-orchestration-patterns.md
  Uploaded: Skill/source-code-editing.json
  Uploaded: commands/boxel-add-field.md
  Uploaded: commands/boxel-add-file-field.md
  Uploaded: commands/boxel-build-from-pattern.md
  Uploaded: commands/boxel-create-card.md
  Uploaded: commands/boxel-create-instance.md
  Uploaded: commands/boxel-debug-runtime.md
  Uploaded: commands/boxel-design-card.md
  Uploaded: commands/boxel-develop-theme.md
  Uploaded: commands/boxel-edit-template.md
  Uploaded: commands/boxel-install-listing.md
  Uploaded: commands/boxel-migrate-schema.md
  Uploaded: commands/boxel-preview-card.md
  Uploaded: commands/boxel-search-cards.md
  Uploaded: commands/boxel-submit-listing.md
  Uploaded: commands/boxel-sync-workspace.md
  Uploaded: commands/distill-from-boxel-skills.md
  Uploaded: commands/distill-learnings.md
  Uploaded: index.json
  Uploaded: index.md
  Uploaded: realm.json
  Uploaded: scripts/import-from-workspaces.mjs
  Uploaded: scripts/index.head.md
  Uploaded: skills/boxel/SKILL.md
  Uploaded: skills/boxel/references/base-field-catalog.md
  Uploaded: skills/boxel/references/card-references.md
  Uploaded: skills/boxel/references/command-development.md
  Uploaded: skills/boxel/references/command-invocation-modes.md
  Uploaded: skills/boxel/references/common-imports.md
  Uploaded: skills/boxel/references/container-query-fitted-layout.md
  Uploaded: skills/boxel/references/core-concept.md
  Uploaded: skills/boxel/references/core-patterns.md
  Uploaded: skills/boxel/references/data-management.md
  Uploaded: skills/boxel/references/date-math.md
  Uploaded: skills/boxel/references/defensive-link-traversal.md
  Uploaded: skills/boxel/references/defensive-programming.md
  Uploaded: skills/boxel/references/delegated-rendering.md
  Uploaded: skills/boxel/references/design-playbook.md
  Uploaded: skills/boxel/references/enumerations.md
  Uploaded: skills/boxel/references/external-libraries.md
  Uploaded: skills/boxel/references/file-editing.md
  Uploaded: skills/boxel/references/fitted-formats.md
  Uploaded: skills/boxel/references/formatters.md
  Uploaded: skills/boxel/references/icons.md
  Uploaded: skills/boxel/references/imagedef.md
  Uploaded: skills/boxel/references/lint-workflow.md
  Uploaded: skills/boxel/references/prefers-wide-format.md
  Uploaded: skills/boxel/references/query-systems.md
  Uploaded: skills/boxel/references/quick-reference.md
  Uploaded: skills/boxel/references/relationship-loading-state.md
  Uploaded: skills/boxel/references/searchable-fields.md
  Uploaded: skills/boxel/references/spec-usage.md
  Uploaded: skills/boxel/references/styling-design.md
  Uploaded: skills/boxel/references/template-syntax.md
  Uploaded: skills/boxel/references/theme-design-system.md
  Uploaded: skills/boxel/scripts/instance-correctness-scan.py
  Uploaded: skills/boxel-create-edit-cards/SKILL.md
  Uploaded: skills/boxel-design/SKILL.md
  Uploaded: skills/boxel-design/references/asset-selection-guidelines.md
  Uploaded: skills/boxel-design/references/critical-rules.md
  Uploaded: skills/boxel-environment/SKILL.md
  Uploaded: skills/boxel-environment/references/assistant-persona.md
  Uploaded: skills/boxel-environment/references/calling-commands.md
  Uploaded: skills/boxel-environment/references/card-tool-selection.md
  Uploaded: skills/boxel-environment/references/choosing-llm-models.md
  Uploaded: skills/boxel-environment/references/common-errors.md
  Uploaded: skills/boxel-environment/references/diagnosing-broken-links.md
  Uploaded: skills/boxel-environment/references/fresh-realm-push-integrity.md
  Uploaded: skills/boxel-environment/references/host-commands-reference.md
  Uploaded: skills/boxel-environment/references/indexing-operations.md
  Uploaded: skills/boxel-environment/references/markdown-edit.md
  Uploaded: skills/boxel-environment/references/searching-and-querying.md
  Uploaded: skills/boxel-environment/references/source-code-editing.md
  Uploaded: skills/boxel-environment/references/user-environment-awareness.md
  Uploaded: skills/boxel-environment/references/workflows-and-orchestration.md
  Uploaded: skills/boxel-file-def/SKILL.md
  Uploaded: skills/boxel-file-def/references/available-fields.md
  Uploaded: skills/boxel-file-def/references/filedef-first-class-file-support.md
  Uploaded: skills/boxel-file-def/references/filedef-vs-base64imagefield.md
  Uploaded: skills/boxel-file-def/references/import-paths.md
  Uploaded: skills/boxel-file-def/references/markdowndef-vs-markdownfield.md
  Uploaded: skills/boxel-file-def/references/no-inline-binary.md
  Uploaded: skills/boxel-file-def/references/rendering-file-fields-in-templates.md
  Uploaded: skills/boxel-file-def/references/type-hierarchy.md
  Uploaded: skills/boxel-file-def/references/using-filedef-in-cards.md
  Uploaded: skills/boxel-flavored-markdown/SKILL.md
  Uploaded: skills/boxel-flavored-markdown/references/authoring-notes.md
  Uploaded: skills/boxel-flavored-markdown/references/base-syntax.md
  Uploaded: skills/boxel-flavored-markdown/references/bfm-extensions-beyond-commonmarkgfm.md
  Uploaded: skills/boxel-flavored-markdown/references/card-directives-the-boxel-extension.md
  Uploaded: skills/boxel-flavored-markdown/references/quick-reference.md
  Uploaded: skills/boxel-flavored-markdown/references/where-bfm-is-used.md
  Uploaded: skills/boxel-markdown-format/SKILL.md
  Uploaded: skills/boxel-markdown-format/references/delegation-composes.md
  Uploaded: skills/boxel-markdown-format/references/essential-helper-markdownescape.md
  Uploaded: skills/boxel-markdown-format/references/pitfalls.md
  Uploaded: skills/boxel-markdown-format/references/rendering-markdown-html-at-runtime.md
  Uploaded: skills/boxel-markdown-format/references/shape-of-a-static-markdown-template.md
  Uploaded: skills/boxel-markdown-format/references/the-default-usually-good-enough.md
  Uploaded: skills/boxel-markdown-format/references/the-markdown-helpers-toolkit.md
  Uploaded: skills/boxel-markdown-format/references/when-youre-done.md
  Uploaded: skills/boxel-markdown-format/references/worked-example-note-card-with-custom-markdown.md
  Uploaded: skills/boxel-patterns/SKILL.md
  Uploaded: skills/boxel-patterns/patterns/app-card-home-with-search/README.md
  Uploaded: skills/boxel-patterns/patterns/attach-remote-image/README.md
  Uploaded: skills/boxel-patterns/patterns/automate-image-steering/README.md
  Uploaded: skills/boxel-patterns/patterns/automate-image-steering/example.gts
  Uploaded: skills/boxel-patterns/patterns/automate-linked-to-me-lookup/README.md
  Uploaded: skills/boxel-patterns/patterns/automate-linked-to-me-lookup/example.gts
  Uploaded: skills/boxel-patterns/patterns/automate-run-command-cli/README.md
  Uploaded: skills/boxel-patterns/patterns/automate-run-command-cli/example.gts
  Uploaded: skills/boxel-patterns/patterns/build-planning-cards-trio/README.md
  Uploaded: skills/boxel-patterns/patterns/build-site-config-with-theme/README.md
  Uploaded: skills/boxel-patterns/patterns/build-site-config-with-theme/example.gts
  Uploaded: skills/boxel-patterns/patterns/cardinfo-override-title/README.md
  Uploaded: skills/boxel-patterns/patterns/cardinfo-override-title/example.gts
  Uploaded: skills/boxel-patterns/patterns/command-atomic-install/README.md
  Uploaded: skills/boxel-patterns/patterns/command-atomic-install/example.gts
  Uploaded: skills/boxel-patterns/patterns/command-data-resource/README.md
  Uploaded: skills/boxel-patterns/patterns/command-data-resource/example.gts
  Uploaded: skills/boxel-patterns/patterns/command-optimistic-pipeline/README.md
  Uploaded: skills/boxel-patterns/patterns/command-optimistic-pipeline/example.gts
  Uploaded: skills/boxel-patterns/patterns/command-typed-with-progress/README.md
  Uploaded: skills/boxel-patterns/patterns/command-typed-with-progress/example.gts
  Uploaded: skills/boxel-patterns/patterns/command-with-skill-card-ref/README.md
  Uploaded: skills/boxel-patterns/patterns/command-with-skill-card-ref/example.gts
  Uploaded: skills/boxel-patterns/patterns/containsmany-sorted-render/README.md
  Uploaded: skills/boxel-patterns/patterns/containsmany-sorted-render/example.gts
  Uploaded: skills/boxel-patterns/patterns/format-morph-shared-component/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-chess-js-via-cdn/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-chess-js-via-cdn/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-filedef-generated-image/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-filedef-generated-image/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-leaflet-via-cdn/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-leaflet-via-cdn/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-one-shot-llm/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-one-shot-llm/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-openrouter-image-generation/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-openrouter-image-generation/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-screenshot-card-format/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-screenshot-card-format/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-send-request-via-proxy/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-send-request-via-proxy/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-three-js-3mf-fabrication/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-three-js-3mf-fabrication/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-three-js-via-cdn/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-three-js-via-cdn/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-thumbnail-card-ai/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-thumbnail-card-ai/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-tone-js-via-cdn/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-tone-js-via-cdn/example.gts
  Uploaded: skills/boxel-patterns/patterns/integrate-web-audio-synthesis/README.md
  Uploaded: skills/boxel-patterns/patterns/integrate-web-audio-synthesis/example.gts
  Uploaded: skills/boxel-patterns/patterns/layout-3d-card-carousel/README.md
  Uploaded: skills/boxel-patterns/patterns/layout-3d-card-carousel/example.gts
  Uploaded: skills/boxel-patterns/patterns/layout-design-board/README.md
  Uploaded: skills/boxel-patterns/patterns/layout-design-board/example.gts
  Uploaded: skills/boxel-patterns/patterns/layout-kanban-drag-drop/README.md
  Uploaded: skills/boxel-patterns/patterns/layout-kanban-drag-drop/example.gts
  Uploaded: skills/boxel-patterns/patterns/layout-sectioned-record-with-nav/README.md
  Uploaded: skills/boxel-patterns/patterns/layout-sectioned-record-with-nav/example.gts
  Uploaded: skills/boxel-patterns/patterns/link-command-menu-item/README.md
  Uploaded: skills/boxel-patterns/patterns/link-command-menu-item/example.gts
  Uploaded: skills/boxel-patterns/patterns/link-discriminated-action-resolver/README.md
  Uploaded: skills/boxel-patterns/patterns/link-discriminated-action-resolver/example.gts
  Uploaded: skills/boxel-patterns/patterns/link-element-tag-helper/README.md
  Uploaded: skills/boxel-patterns/patterns/link-element-tag-helper/example.gts
  Uploaded: skills/boxel-patterns/patterns/link-flip-card/README.md
  Uploaded: skills/boxel-patterns/patterns/link-flip-card/example.gts
  Uploaded: skills/boxel-patterns/patterns/link-host-mode-paths/README.md
  Uploaded: skills/boxel-patterns/patterns/link-host-mode-paths/example.gts
  Uploaded: skills/boxel-patterns/patterns/link-onclick-outside/README.md
  Uploaded: skills/boxel-patterns/patterns/link-onclick-outside/example.gts
  Uploaded: skills/boxel-patterns/patterns/link-view-transition/README.md
  Uploaded: skills/boxel-patterns/patterns/link-view-transition/example.gts
  Uploaded: skills/boxel-patterns/patterns/organize-atomic-field-factory/README.md
  Uploaded: skills/boxel-patterns/patterns/organize-atomic-field-factory/example.gts
  Uploaded: skills/boxel-patterns/patterns/organize-base-class-taxonomy/README.md
  Uploaded: skills/boxel-patterns/patterns/organize-base-class-taxonomy/example.gts
  Uploaded: skills/boxel-patterns/patterns/organize-lru-cached-parser/README.md
  Uploaded: skills/boxel-patterns/patterns/organize-lru-cached-parser/example.gts
  Uploaded: skills/boxel-patterns/patterns/organize-recursive-fielddef/README.md
  Uploaded: skills/boxel-patterns/patterns/organize-recursive-fielddef/example.gts
  Uploaded: skills/boxel-patterns/patterns/organize-resource-class-data-loader/README.md
  Uploaded: skills/boxel-patterns/patterns/organize-resource-class-data-loader/example.gts
  Uploaded: skills/boxel-patterns/patterns/organize-sensitive-stub-pair/README.md
  Uploaded: skills/boxel-patterns/patterns/organize-sensitive-stub-pair/example.gts
  Uploaded: skills/boxel-patterns/patterns/organize-typed-activity-feed/README.md
  Uploaded: skills/boxel-patterns/patterns/organize-typed-activity-feed/example.gts
  Uploaded: skills/boxel-patterns/patterns/organize-variant-field-dispatcher/README.md
  Uploaded: skills/boxel-patterns/patterns/organize-variant-field-dispatcher/example.gts
  Uploaded: skills/boxel-patterns/patterns/pick-rating/README.md
  Uploaded: skills/boxel-patterns/patterns/pick-rating/example.gts
  Uploaded: skills/boxel-patterns/patterns/pick-typed-sort/README.md
  Uploaded: skills/boxel-patterns/patterns/pick-typed-sort/example.gts
  Uploaded: skills/boxel-patterns/patterns/polymorphic-field-subclass/README.md
  Uploaded: skills/boxel-patterns/patterns/resource-for-state/README.md
  Uploaded: skills/boxel-patterns/patterns/show-card-list-with-views/README.md
  Uploaded: skills/boxel-patterns/patterns/show-card-list-with-views/example.gts
  Uploaded: skills/boxel-patterns/patterns/show-count-tiles-from-query/README.md
  Uploaded: skills/boxel-patterns/patterns/show-count-tiles-from-query/example.gts
  Uploaded: skills/boxel-patterns/patterns/show-filedef-audio-player/README.md
  Uploaded: skills/boxel-patterns/patterns/show-filedef-audio-player/example.gts
  Uploaded: skills/boxel-patterns/patterns/show-list-prefer-prerendered/README.md
  Uploaded: skills/boxel-patterns/patterns/show-list-prefer-prerendered/example.gts
  Uploaded: skills/boxel-patterns/patterns/show-pdf-annotations-filedef/README.md
  Uploaded: skills/boxel-patterns/patterns/show-pdf-annotations-filedef/example.gts
  Uploaded: skills/boxel-patterns/patterns/show-runtime-markdown-html/README.md
  Uploaded: skills/boxel-patterns/patterns/show-runtime-markdown-html/example.gts
  Uploaded: skills/boxel-patterns/patterns/show-table-from-query/README.md
  Uploaded: skills/boxel-patterns/patterns/show-table-from-query/example.gts
  Uploaded: skills/boxel-patterns/patterns/show-wiki-links/README.md
  Uploaded: skills/boxel-patterns/patterns/show-wiki-links/example.gts
  Uploaded: skills/boxel-patterns/patterns/theme-first-workflow/README.md
  Uploaded: skills/boxel-patterns/patterns/theme-first-workflow/example.gts
  Uploaded: skills/boxel-patterns/references/ai-image-models.md
  Uploaded: skills/boxel-patterns/references/integration-surfaces.md
  Uploaded: skills/boxel-patterns/references/libraries.md
  Uploaded: skills/boxel-patterns/references/pattern-authoring.md
  Uploaded: skills/boxel-patterns/references/pattern-backlog.md
  Uploaded: skills/boxel-patterns/scripts/audit-host-command-refs.mjs
  Uploaded: skills/boxel-skill-authoring/SKILL.md
  Uploaded: skills/boxel-theme-development/SKILL.md
  Uploaded: skills/boxel-theme-development/references/design-md-adapter.md
  Uploaded: skills/boxel-theme-development/references/shadcn-boxel-token-mapping.md
  Uploaded: skills/boxel-ui-guidelines/SKILL.md
  Uploaded: skills/boxel-ui-guidelines/references/checklist.md
  Uploaded: skills/boxel-ui-guidelines/references/delegated-render-control.md
  Uploaded: skills/boxel-ui-guidelines/references/field-rendering-fields-vs-model.md
  Uploaded: skills/boxel-ui-guidelines/references/font-loading-theme-card-owns-imports.md
  Uploaded: skills/boxel-ui-guidelines/references/prefer-component-apis-write-new-components-when-needed.md
  Uploaded: skills/boxel-ui-guidelines/references/prevent-content-overflow.md
  Uploaded: skills/boxel-ui-guidelines/references/print-and-published-output.md
  Uploaded: skills/boxel-ui-guidelines/references/style-budget.md
  Uploaded: skills/boxel-ui-guidelines/references/template-patterns.md
  Uploaded: skills/boxel-ui-guidelines/references/use-boxel-design-tokens-for-theming.md
  Uploaded: skills/boxel-ui-guidelines/references/use-boxel-ui-components.md
  Uploaded: skills/boxel-ui-guidelines/references/use-container-queries-not-viewport-units.md
  Uploaded: skills/catalog-listing/SKILL.md
  Uploaded: skills/catalog-listing/references/submission-workflow.md
  Uploaded: skills/glossary.md
  Uploaded: skills/source-code-editing/SKILL.md
Skipping 2 realm-managed remote artifact(s): index.json, realm.json

Checkpoint created: b9f6bf5 [MAJOR] Push: 320 files (~320)
Push completed
Push completed successfully

@habdelra
habdelra requested a review from Copilot July 16, 2026 14:03
Allowlist the read-only mcp__Linear__get_issue tool to reduce permission
prompts (from /fewer-permission-prompts). Config only; no effect on the
skill tree.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QboXNnsmCeFyQ76oNwVMXM

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new Boxel pattern that guides authors to prefer prerendered result streams for list UIs (via @context.searchResultsComponent) and frames “which query API to use” as a cost/scalability decision, with cross-links from related docs and patterns.

Changes:

  • Introduces the show-list-prefer-prerendered pattern (README + example.gts) emphasizing prerendered list rendering and realm-scoped instance hydration only when truly needed.
  • Updates query guidance and pattern docs to cross-link and highlight the cost tradeoff between prerendered entries vs hydrating CardDef instances.
  • Adds a .claude/settings.json file enabling a Linear MCP permission (not mentioned in the PR description).

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
skills/glossary.md Registers the new pattern in the glossary’s “Show” section.
skills/boxel/references/query-systems.md Reframes “when to use what” query guidance as a cost decision and points to the new pattern.
skills/boxel-patterns/SKILL.md Registers the new pattern in the Show patterns list.
skills/boxel-patterns/patterns/show-table-from-query/README.md Cross-links to the new pattern in “See also”.
skills/boxel-patterns/patterns/show-list-prefer-prerendered/README.md Adds the new pattern documentation and recipe.
skills/boxel-patterns/patterns/show-list-prefer-prerendered/example.gts Adds an example CardDef showing prerendered list rendering + commented scoped hydration alternative.
skills/boxel-patterns/patterns/show-card-list-with-views/README.md Cross-links to the new pattern in “See also”.
.claude/settings.json Adds Claude Code tool permissions configuration (Linear MCP).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread skills/boxel-patterns/patterns/show-list-prefer-prerendered/README.md Outdated
Comment thread .claude/settings.json Outdated
claude added 2 commits July 16, 2026 14:11
Both Source references now point at the catalog realm consistently.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QboXNnsmCeFyQ76oNwVMXM
The permission allowlist is local Claude Code config unrelated to the
CS-12147 pattern work, so it shouldn't live in this public repo. Keep it
on disk for local use and ignore it going forward.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QboXNnsmCeFyQ76oNwVMXM
@habdelra
habdelra requested a review from a team July 16, 2026 14:22
@habdelra
habdelra merged commit c5ac19a into main Jul 16, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants